Method and apparatus for controlling service transmission

ABSTRACT

A method and a device for controlling service transmission can implement service forwarding. The method includes: receiving a connection request message, where the connection request message includes user information; determining value-added service system VAS information according to the user information; receiving a first data packet of the service that is sent by a sending end; obtaining, according to the VAS information, a second data packet from the at least one destination VAS; and sending the second data packet to a receiving end. A VAS performs value-added processing on a data packet, and returns the data packet to a gateway device, allowing the gateway device to perform service arrangement flexibly according to dynamic information about a user.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of International Patent ApplicationNo. PCT/CN2013/071579, filed on Feb. 8, 2013, which claims priority toInternational Patent Application No. PCT/CN2012/075533, filed on May 15,2012, both of which are hereby incorporated by reference in theirentireties.

TECHNICAL FIELD

The present invention relates to the field of communications, and inparticular, to a method and an apparatus for controlling servicetransmission.

BACKGROUND

While providing a communications service for a user, certaintelecommunications operators release some packages related to theservice. If the user subscribes to a package, the service of the user isforwarded to a value-added service system (VAS, Value Added System)corresponding to the package for value-added processing. If the userdoes not subscribe to a package, a service request of the user isdirectly forwarded to a service server (network side) without beingprocessed by the value-added service system. Therefore, services ofdifferent users need to be forwarded to different value-added servicesystems according to package subscription relationships of the users.

At present, one technical solution is known, that is, a network accessserver (NAS, Network Access Server) device, for example, a gatewaygeneral packet radio service support node (GGSN, Gateway GPRS SupportNode), a packet data serving node (PDSN, Packet Data Serving Network), abroadband remote access server (BRAS, Broadband Remote Access Server),and the like, or an authentication, authorization, and accountingservice (AAA, Authentication Authorization and Accounting) serverdetermines a routing policy according to user subscription information,that is, allocates different Internet Protocol address pools (IP Pool,Internet Protocol Pool) for different users, for example, allocates IPPool1 that indicates VAS1 to a service of a user who subscribes to avalue-added service processed by VAS1, allocates IP Pool2 that indicatesVAS2 to a service of a user who subscribes to a value-added serviceprocessed by VAS2, and allocates IP Pool3 that indicates VAS 3 to aservice of a user who subscribes to a value-added service processed byVAS 3. A router device (switch device) performs policy-based routingaccording to a source IP address (the foregoing IP Pool) of a serviceand forwards a data packet of the service to different VASs forprocessing. After a VAS performs value-added processing on the datapacket, the VAS directly sends the data packet to a piece of userequipment, a network side, or another VAS.

Therefore, in the foregoing technical solution, in a case that a usersubscribes to a value-added service processed by multiple VASs, or avalue-added service subscribed by a user changes with a triggercondition, service arrangement cannot be performed for the value-addedservice in each VAS.

SUMMARY

Embodiments of the present invention provide a method and an apparatusfor controlling service transmission, which enriches communicationsservices while saving communications resources to a certain extent.

According to one aspect, a method for controlling service transmissionis provided and includes: receiving a connection request message sent bya piece of user equipment that transmits a service, where the connectionrequest message contains user information of the user equipment;determining value-added service system VAS information according to theuser information, where the VAS information is used to indicate at leastone destination VAS of the service; receiving a first data packet of theservice sent by a sending end; obtaining, according to the VASinformation, a second data packet from the at least one destination VAS,where the second data packet is a data packet obtained after the atleast one destination VAS performs value-added processing on the firstdata packet; and sending the second data packet to a receiving end.

According to another aspect, a method for controlling servicetransmission is provided and includes: receiving a first data packetsent by a gateway device; generating a second data packet by performingvalue-added processing on the first data packet; and sending the seconddata packet to the gateway device.

According to still another aspect, an apparatus for controlling servicetransmission is provided and includes: a receiving unit, configured toreceive a connection request message sent by a piece of user equipmentthat transmits a service, where the connection request message includesuser information of the user equipment; a determining unit, configuredto determine value-added service system VAS information according to theuser information, where the VAS information is used to indicate at leastone destination VAS of the service; the receiving unit is furtherconfigured to receive a first data packet of the service that is sent bya sending end; an obtaining unit, configured to obtain a second datapacket from the at least one destination VAS according to the VASinformation, where the second data packet is a data packet obtainedafter the at least one destination VAS performs value-added processingon the first data packet; and a sending unit, configured to send thesecond data packet to a receiving end.

In the method and apparatus for controlling service transmission in theembodiments of the present invention, a VAS performs value-addedprocessing on a data packet, and returns the data packet to a gatewaydevice, allowing the gateway device to perform service arrangementflexibly according to dynamic information about a user.

According to yet another aspect of an implementation manner of thepresent invention, a communications service processing method isprovided and includes:

receiving, by a system for controlling service transmission,communication data sent by a piece of user equipment, where thecommunication data carries information about an original destinationserver, which is referred to as a receiving section;

obtaining, according to the communication data, any one or anycombination of dynamic information about a user sending thecommunication data, and service layer information of the communicationdata, which is referred to as an obtaining section;

determining a forwarding policy according to the obtained any one or anycombination of the dynamic information about the user and the servicelayer information, where the forwarding policy includes: forwardingservice data corresponding to the communication data to at least oneservice server, and the at least one service server is different from anoriginal destination server carried in the communication data, which isreferred to as a forwarding policy determining section; and

sending the service data corresponding to the communication data to theat least one service server, receiving the service data processed by theat least one service server, and sending the received service data thathas been processed to the original destination server carried in thecommunication data, which is referred to as a control executing section.

According to another aspect of an implementation manner of the presentinvention, a system for controlling service transmission is provided andincludes: a receiving module (M100), an obtaining module (M200), aforwarding policy determining module (M300), and a control executingmodule (M400), where the modules connect to and communicate with eachother,

the receiving module (M100) is configured to receive communication datasent by a piece of user equipment, where the communication data carriesinformation about an original destination server;

the obtaining module (M200) is configured to obtain, according to thecommunication data, any one or any combination of dynamic informationabout a user of the user equipment and service layer information of thecommunication data;

the forwarding policy determining module (M300) is configured todetermine a forwarding policy according to the obtained any one or anycombination of the dynamic information about the user and the servicelayer information, where the forwarding policy includes: forwardingservice data sent by the user equipment to at least one service server,and the at least one service server is different from the originaldestination server carried in the communication data; and

the control executing module (M400) is configured to control and executethe following procedure: sending the service data sent by the userequipment to the at least one service server, receiving the service dataprocessed by the at least one service server, and sending the receivedservice data that has been processed to the original destination servercarried in the communication data.

For the implementation manner of the communications service processingmethod and the implementation manner of a system for controlling servicetransmission, in a specific example, the system for controlling servicetransmission is a PCC system, and a dynamic rule interface or a staticrule interface is used between a PCEF and a PCRF in the PCC system.

For the implementation manner of the communication service processingmethod, the implementation manner of a system for controlling servicetransmission, and the specific implementation manner of the PCC systemas the system for controlling service transmission, in a more specificimplementation manner, the dynamic information about the user includesone or any combination of the following information: a phone number ofthe user, an IMSI of the user, an IP address of the user, servicesubscription information of the user, and a bearer type of a currentnetwork; the service layer information includes one or any combinationof the following information: service-related L7 layer or L7+ layerinformation. By using the foregoing method or system, the system forcontrolling service transmission may perform service control andprocessing flexibly for a service according to the dynamic informationabout the user or the service layer information, and in particular,forward a service to a service server other than the originaldestination service server, enriching communications services whileavoiding repeated transmission of oversize communication data. Inparticular, the user equipment does not need to send related servicedata to different service servers at multiple times, savingcommunications resources to some extent and improving communicationefficiency.

BRIEF DESCRIPTION OF DRAWINGS

To describe the technical solutions in the embodiments of the presentinvention more clearly, the following briefly introduces theaccompanying drawings required for describing the embodiments.Apparently, the accompanying drawings in the following description showmerely some embodiments of the present invention, and a person ofordinary skill in the art may still derive other drawings from theseaccompanying drawings without creative efforts.

FIG. 1 is a schematic flowchart of a method for controlling servicetransmission according to an embodiment of the present invention;

FIG. 2 is an interaction diagram of a method for controlling servicetransmission according to an embodiment of the present invention;

FIG. 3 is an interaction diagram of a method for controlling servicetransmission according to another embodiment of the present invention;

FIG. 4 is a schematic block diagram of an apparatus for controllingservice transmission according to an embodiment of the presentinvention;

FIG. 5 a is a schematic architecture diagram of a system according to animplementation manner of the present invention;

FIG. 5 b is a schematic architecture diagram of another system accordingto an implementation manner of the present invention, including aschematic trend of an uplink service flow;

FIG. 5 c is a schematic architecture diagram of still another systemaccording to an implementation manner of the present invention,including a schematic trend of a downlink service flow;

FIG. 6 is a simplified schematic flowchart of a method for controllingservice transmission according to an implementation manner of thepresent invention;

FIG. 7 a is a schematic flowchart of a method for controlling servicetransmission according to an implementation manner of the presentinvention;

FIG. 7 b is a schematic flowchart of another method for controllingservice transmission according to an implementation manner of thepresent invention;

FIG. 8 is a schematic flowchart of a method for controlling servicetransmission according to an implementation manner of the presentinvention;

FIG. 9A, 9B, 9C are a schematic signaling diagram of an example of themethod shown in FIG. 8; and

FIG. 10 is a schematic structural diagram of a system for controllingservice transmission according to an implementation manner.

FIG. 11 is a schematic structural diagram of a system for controllingservice transmission according to another implementation manner.

DESCRIPTION OF EMBODIMENTS

The following clearly and describes the technical solutions in theembodiments of the present invention with reference to the accompanyingdrawings in the embodiments of the present invention. Apparently, thedescribed embodiments are merely a part rather than all of theembodiments of the present invention. All other embodiments obtained bya person of ordinary skill in the art based on the embodiments of thepresent invention without creative efforts shall fall within theprotection scope of the present invention.

The technical solutions of the present invention may be applied tovarious communications systems, such as a Global System for MobileCommunications (GSM, Global System for Mobile communication), a CodeDivision Multiple Access (CDMA, Code Division Multiple Access) system,Wideband Code Division Multiple Access (WCDMA, Wideband Code DivisionMultiple Access Wireless), General Packet Radio Service (GPRS, GeneralPacket Radio Service), Long Term Evolution (LTE, Long Term Evolution),and the like.

A piece of user equipment (UE, User Equipment), also known as a mobileterminal, a piece of mobile user equipment, and on the like, maycommunicate with one or more core networks through a wireless accessnetwork (for example, RAN, Radio Access Network). The user equipment maybe a mobile terminal, such as a mobile phone (also known as a “cellular”phone), and a computer equipped with a mobile terminal. For example, theuser equipment may be a portable, pocket-type, handheld, computerbuilt-in or vehicle-mounted mobile apparatus, which exchanges languageand/or data with the wireless access network.

A policy decision server may be deployed outside a gateway device,independent of the gateway device.

A gateway device may include a GGSN, a PDSN, a Wimax Access ServiceNetwork (WASN, Wimax Access Service Network), and the like. It should beunderstood that a gateway device of the embodiments of the presentinvention may further include a network element that may implement aservice centralization and convergence point and may implement parsingand control of content of a service flow accessed by a terminal user onanother network.

In addition, in a policy and charging control (PCC, Policy and ChargingControl) architecture, an entity of a policy and charging enforcementfunction (PCEF, Policy and Charging Enforcement Function) is a part ofthe gateway device and is used to implement functions of servicedetecting, policy executing, and traffic-based charging.

An entity of a policy and charging rule function (PCRF, Policy andCharging Rule Function) may receive, from the PCEF, an input used forimplementing functions of policy control decision-making andtraffic-based charging control, provide the PCEF with network controlfunctions related to service data flow detecting, gating control, andtraffic-based charging (except credit control), and make a PCC decisionwith reference to customized information of the PCRF.

FIG. 1 shows a schematic flowchart of a method 100 for controllingservice transmission according to an embodiment of the present inventionfrom a perspective of a gateway device side. As shown in FIG. 1, themethod 100 includes:

S110: Receive a connection request message sent by a piece of userequipment that transmits a service, where the connection request messageincludes user information of the user equipment.

S120: Determine value-added service system VAS information according tothe user information, where the VAS information is used to indicate atleast one destination VAS of the service.

S130: Receive a first data packet of the service that is sent by asending end.

S140: Obtain, according to the VAS information, a second data packetfrom the at least one destination VAS, where the second data packet is adata packet obtained after the at least one destination VAS performsvalue-added processing on the first data packet.

S150: Send the second data packet to a receiving end.

Specifically, in the foregoing step S110, the UE may send a RemoteAuthentication Dial In User Service charging start (RadiusAccounting-Start, Radius Remote Authentication Dial In User ServiceAccounting-Start) request message to a gateway device after gettingonline, and the Radius Accounting-Start request message may carry userinformation (for example, a phone number or the like) of the UE. Thegateway device may query, according to the user information,subscription information corresponding to the user information from asubscription information list obtained in advance.

In the foregoing step S120, the gateway device may determine a VASforwarding rule (for example, VAS information that needs to be sent andcorresponds to the subscription information) corresponding to a serviceof the UE, where specific rule content (VAS information) may include aVAS identifier ID, a virtual local area network VLAN ID of the VAS, andan Internet Protocol IP address of the VAS. The VLAN ID of the VAS mayinclude an uplink virtual local area network identifier (Uplink-VLAN ID)and a downlink virtual local area network identifier (Downlink-VLAN ID).The IP address of the VAS may include an uplink Internet Protocol(Uplink-VAS IP) address (used to indicate a gateway address and hostbyte order of a next hop when an uplink service flow is sent to the VAS)and a downlink Internet Protocol (Downlink-VAS IP) address (used toindicate a gateway address and host byte order of a next hop when adownlink service flow is sent to the VAS).

Optionally, in the embodiment of the present invention, the methodfurther includes:

obtaining status information that is used to indicate service status ofthe service; and

the determining VAS information according to the user informationincludes:

determining the VAS information according to the user information andthe status information.

Optionally, in the embodiment of the present invention, the statusinformation includes time information used to indicate the current timeand/or bearer information used to indicate a current bearer network ofthe service.

Specifically, a case that transmission of a value-added servicesubscribed by a UE may change with the current service status exists.For example, a UE subscribes to a package, and a data packet of the UEneeds to be forwarded to an online antivirus platform (VAS) within aspecified time period (for example, 8 am-8 pm). If the UE gets onlinebetween 08:00 am and 08:00 pm and transmits data to a network side, agateway device may query, according to a phone number of a user and thecurrent time, subscription information of the UE and determine a VASforwarding rule of forwarding a data packet of the UE to the onlineantivirus platform. If the UE gets online between 08:00 pm and 08:00 amand transmits data to the network side, a gateway device may querysubscription information of the UE according to a phone number of a userand the current time and determine a VAS forwarding rule of directlyforwarding a data packet of the UE to the network side.

For still another example, a UE subscribes to a package, and a datapacket of the UE needs to be forwarded to an online antivirus platform(VAS) in 3G network mode. If a user gets online through a 3G network andtransmits data to a network side, a gateway device may query, accordingto a phone number of the user and a bearer type (RAT-TYPE), subscriptioninformation of the UE and determine a VAS forwarding rule of forwardinga data packet of the UE to the online antivirus platform. If the userswitches to a 2G network and transmits data to a network side, a gatewaydevice may query, according to the phone number of the user and thebearer type (RAT-TYPE), subscription information of the UE and determinea VAS forwarding rule of directly forwarding a data packet of the UE tothe network side.

According to the method for controlling service transmission in theembodiment of the present invention, service arrangement can beperformed flexibly for a value-added service of each VAS when avalue-added service subscribed by a user changes with a triggercondition.

Optionally, in the embodiment of the present invention, the determiningVAS information according to the user information includes:

obtaining, according to the user information, the VAS information from afirst database generated based on correspondence between the userinformation and the VAS information.

Optionally, in the embodiment of the present invention, the determiningVAS information according to the user information and the statusinformation includes:

obtaining, according to the user information and the status information,the VAS information from a second database generated based oncorrespondence between the user information and status information andthe VAS information.

Specifically, after the UE subscribes to a service provided by anoperator, a gateway device may synchronize subscription information ofthe UE from the operator, where the subscription information records aVAS forwarding rule of a service of the UE. In addition, the gatewaydevice may generate and maintain a list that records correspondencebetween the user information of the user and the VAS forwarding rule(for example, recording the phone number of the user and an identifierVAS ID of a server used for implementing the service subscribed by theuser). Therefore, the gateway device may determine, according to theuser information, a VAS forwarding rule of the service of the UE fromthe list.

Optionally, in the embodiment of the present invention, the determiningVAS information according to the user information includes:

sending a first policy request message that includes the userinformation to a policy decision server;

receiving a first policy request answer message that includes firstcontrol information and is sent by the policy decision server, where thefirst control information is determined by the policy decision serveraccording to the user information and is used to indicate the VASinformation; and

determining the VAS information according to the first controlinformation.

Optionally, in the embodiment of the present invention, the determiningVAS information according to the user information and the statusinformation includes:

sending a second policy request message that includes the userinformation and the status information to a policy decision server;

receiving a second policy request answer message that includes secondcontrol information and is sent by the policy decision server, where thesecond control information is determined by the policy decision serveraccording to the user information and the status information and is usedto indicate the VAS information; and

determining the VAS information according to the second controlinformation.

Specifically, limited by system resources of devices (including NAS andAAA devices) on a present network, allocating an IP address according todynamic information about a user (for example, user subscriptioninformation, package subscription relationship, and the like) exerts alarge impact on processing performance of the devices on the presentnetwork. In addition, in the foregoing technical solution, to maintainsynchronization of the dynamic information about the user, a device onthe present network needs to be upgraded and restructured or manuallyupdated by a network maintenance person, rather difficult in upgrade andmaintenance. Therefore, in the embodiment of the present invention,after the UE subscribes to a service provided by an operator, a policydecision server deployed outside a gateway device may synchronizesubscription information of the UE from the operator, where thesubscription information records a VAS forwarding rule of a service ofthe UE. Furthermore, the policy decision server may generate andmaintain a list that records correspondence between the user informationof the user and the VAS forwarding rule (for example, recording a phonenumber of the user and an identifier VAS ID of a server for implementingthe service subscribed by the user). Therefore, after receiving a RadiusAccounting-Start message sent by the UE, the gateway device may send apolicy request message that includes the user information of the UE tothe policy decision server. The policy decision server may determine,according to the user information, the VAS forwarding rule of theservice of the UE from the list and send information that is used toindicate the VAS forwarding rule to the gateway device through a policydecision request answer message. Therefore, the gateway devicedetermines, according to the information, the VAS forwarding rule of theservice of the UE.

Furthermore, optionally, in the embodiment of the present invention, thedetermining the VAS information according to the first controlinformation includes:

determining the VAS information according to a VAS informationindication identifier included in the first control information; or

obtaining the VAS information from the control information.

Furthermore, optionally, in the embodiment of the present invention, thedetermining the VAS information according to the second controlinformation includes:

determining the VAS information according to a VAS informationindication identifier included in the second control information; or

obtaining the VAS information from the second control information.

Specifically, a dynamic rule interface may be used between a PCRF and aPCEF in a PCC architecture to implement a related solution. In specific,a policy decision server (for example, a PCRF) may deliver allforwarding rules (VAS information) to a gateway device (for example, aPCEF) through the dynamic rule interface (for example, through a Gxmessage). In this case, the following fields need to be added to the Gxmessage:

<credit control answer (CCA, Credit Control Answer) message>::=<DiameterHeader: 272, PXY>(which indicates that the PCRF sends all VAS forwardingrules (VAS information) to the PCEF through a CCA message)

*[VAS-Redirect-Install] (which means to create or update a VASredirection rule)

*[VAS-Redirect-Remove] (which means to delete a VAS redirection rule)

<(RAR, Re-Authorize Request)>::=<Diameter Header: 258, REQ, PXY>(whichindicates that the PCRF sends all VAS forwarding rules (VAS information)to the PCEF through an RAA message)

*[VAS-Redirect-Install] (which means to create or update a VASredirection rule)

*[VAS-Redirect-Remove] (which means to delete a VAS redirection rule)

VAS-Redirect-Install::=<AVP Header: 10109>

{VAS-Redirect-Rule-Name} (which indicates the name of a new/updated VASredirection rule)

{VASID} (used to indicate a VAS identifier)

{Uplink-VLANID} (used to indicate an uplink VLAN ID)

{Downlink-VLANID} (used to indicate a downlink VLAN ID)

{Uplink-VASIP} (used to indicate an uplink VAS IP)

{Downlink-VASIP} (used to indicate a downlink VAS IP)

VAS-Redirect-Remove::=<AVP Header: 10110>

*[VAS-Redirect-Rule-Name] (which indicates the name of a deleted VASredirection rule)

In this way, all VAS information is configured outside a gateway device,thereby minimizing an impact on performance of a network device.

Furthermore, optionally, in the embodiment of the present invention, thedetermining VAS information according to the control informationincludes::

determining the VAS information according to a VAS informationindication identifier included in the control information.

Alternatively, a static rule interface may be used between the PCRF andthe PCEF in the PCC architecture to implement the related solution.Specifically, VAS information described in Table 1 may be configured onthe gateway device (for example, a PCEF) in advance, so that the policydecision server (for example, a PCRF) may send merely a VAS informationindication identifier that is used to indicate a specified forwardingrule (VAS information). For example, a VAS redirection rule name (*VAS-Redirect-Rule-Name) in Table 1 means to activate or deactivate acertain VAS redirection rule. The gateway device (for example, a PCEF)may query, according to the * VAS-Redirect-Rule-Name, a localstatically-configured forwarding rule (stored in a memory database) andobtain information about a VAS to which the service needs to beforwarded.

TABLE 1 Field name Field type Field definition Constraint*VAS-Redirect-Rule-Name Varchar2 (21) Name of a VAS forwarding NOT NULLrule VAS ID 32-bit unsigned VAS ID NOT NULL integer (Unit32) Uplink-VLANID Uint32 Uplink VLAN ID of a VAS NOT NULL Downlink-VLAN ID Uint32Downlink VLAN ID of a NOT NULL VAS Uplink-VAS IP Uint32 Uplink VAS IP ofa VAS NOT NULL Downlink-VAS IP Uint32 Downlink VAS IP of a VAS NOT NULL

In this case, the following fields need to be added to the Gx message:

<CCA>::=<Diameter Header: 272, PXY>(which indicates that the PCRF sendsall VAS forwarding rules (VAS information) to the PCEF through a CCAmessage)

*[VAS-Redirect-Install] (which means to create or update a VASredirection rule)

*[VAS-Redirect-Remove] (which means to delete a VAS redirection rule)

<RAR>::=<Diameter Header: 258, REQ, PXY>(which indicates that the PCRFsends all VAS forwarding rules (VAS information) to the PCEF through anRAA message)

*[VAS-Redirect-Install] (which means to create or update a VASredirection rule)

*[VAS-Redirect-Remove] (which means to delete a VAS redirection rule)

VAS-Redirect-Install::=<AVP Header: 10109>

{VAS-Redirect-Rule-Name} (which indicates the name of a new/updated VASredirection rule)

*[VAS-Redirect-Rule-Name] (which indicates the name of a deleted VASredirection rule)

In this way, specific VAS information is configured on the gatewaydevice, so that the policy decision server can complete indication of aforwarding rule, namely, VAS information, by merely deliveringindication information, thereby shortening interaction time, increasinga service access speed, and reducing an impact on user experience.

In the method for controlling service transmission in the embodiment ofthe present invention, a policy decision server deployed outside agateway device determines control information of a service, and thegateway device controls service transmission according to the controlinformation, thereby reducing an impact of service forwarding accordingto dynamic information about a user on performance of the gatewaydevice, maintaining continuous update for a piece of user equipment, andreducing network maintenance workload.

In the embodiment of the present invention, a service may be sent from aUE to a network side or from a network side to a UE through a gatewaydevice. Therefore, in the foregoing step S130, the gateway device mayreceive a data packet of the service that is sent by the UE or thenetwork side (the following describes the network side by using aservice provider (SP, Service Provider) as an example).

In the foregoing step S140, the gateway device may establish, accordingto the foregoing VAS information, a TCP link with a VAS indicated by theVAS information and send the foregoing data packet to the VAS. The VASperforms value-added processing on the data packet and returns theprocessed data packet to the gateway device.

Optionally, in the embodiment of the present invention, the VASinformation is used to indicate at least two destination VASs of theservice; and

the obtaining a second data packet from the at least one destination VASaccording to the VAS information includes:

sending, according to the VAS information, the first data packet to afirst destination VAS;

receiving a third data packet sent by the first destination VAS, wherethe third data packet is a data packet obtained after the firstdestination VAS performs value-added processing on the first datapacket;

sending, according to the VAS information, the third data packet to asecond destination VAS; and

receiving a data packet that is sent by the second destination VAS, andobtained after the second destination VAS performs value-addedprocessing on the third data packet; where

the data packet obtained after the second destination VAS performsvalue-added processing on the third data packet is the second datapacket; or sending a data packet obtained after the second destinationVAS performs value-added processing on the third data packet to at leastanother one destination VAS, so that the at least another onedestination VAS performs value-added processing again on the data packetobtained after the second destination VAS performs value-addedprocessing on the third data packet, and uses the data packet obtainedafter the at least one another destination VAS performs value-addedprocessing again on the data packet, which is obtained after the seconddestination VAS performs value-added processing on the third datapacket, as the second data packet, where the another destination VAS isa destination VAS other than the first destination VAS and the seconddestination VAS.

Specifically, for example, if a user subscribes to a package released byan operator to obtain a web page adaption service and a videooptimization service, a gateway device may determine a VAS forwardingrule of the UE (for example, sending a data packet of the UE to a VASthat processes the web page adaption service and a VAS that processesthe video optimization service) by querying, according to a phone numberof the user, a locally stored VAS forwarding rule database or obtainingthe VAS forwarding rule of the UE from a policy decision server.

In addition, after receiving a data packet sent by the UE, the gatewaydevice may send, according to the VAS forwarding rule, the data packetto either the VAS that processes the web page adaption service or theVAS that processes the video optimization service (for example, the VASthat processes the web page adaption service). Specifically, each VAS islocated in a different VLAN. Therefore, the PCEF may forward a servicepacket according to a VLAN ID of a VAS, that is, modify the VLAN ID andsend a service flow through a specified VLAN. The gateway device maysave an original destination address of the data packet, change adestination MAC address of the service packet to an IP address of acorresponding VAS, change a next-hop routing destination address of thedata packet to an IP address of the VAS (which is the VAS processing theweb page adaption service), and send the data packet to the VAS througha switch. In the following description, a method for a gateway device tosend a data packet to a VAS is similar to the foregoing procedure, andtherefore details are not described herein.

After performing value-added processing on the data packet, the VASsends the data packet (the data packet obtained after web page adaptionprocessing) back to the gateway device. Specifically, a routing policymay be configured on the VAS, that is, setting the next-hop routingdestination address of the data packet to the IP address of the gatewaydevice. In the following description, a method for a VAS to send a datapacket to a gateway device is similar to the foregoing procedure, andtherefore details are not described herein.

Then, the gateway device sends the data packet (the data packet obtainedafter web page adaption processing) to either the VAS that processes theweb page adaption service or the VAS that processes the videooptimization service (for example, the VAS that processes the videooptimization service). After performing-value-added processing on thereceived data packet (the data packet obtained after web page adaptionprocessing), the VAS sends the data packet (the data packet obtainedafter web page adaption processing and video optimization processing)back to the gateway device. Finally, the gateway device changes thenext-hop routing destination address of the data packet (the data packetobtained after the web page adaption processing and video optimizationprocessing) to the saved original destination address and sends the datapacket to an SP.

The foregoing describes an embodiment that a UE sends a data packet toan SP through a gateway device. However, the present invention is notlimited to the foregoing embodiment, and is also applicable to a casethat an SP sends a data packet to a UE through a gateway device, where,under the circumstance, a sequence for forwarding the data packet to aVAS that processes a web page adaption service and a VAS that processesa video optimization service may be the same as or opposite to that inthe foregoing embodiment, which is not specifically limited by thepresent invention.

In addition, the foregoing describes an embodiment that a gateway deviceforwards a data packet to two VASs in sequence. However, the presentinvention is not limited to the foregoing embodiment. The number ofdestination VASs may be determined according to UE subscriptioninformation and may not be limited.

After determining VAS information of destination VASs of a service, thePCEF may forward the data packet according to the priority information,in particular, according to priority identifiers or a sequence of theVASs in a VAS forwarding rule, that is, the VAS information may includethe priority information that is used to indicate a sequence for sendingthe first data packet in the at least two VASs.

Specifically, in a Gx message, other than the foregoing*[VAS-Redirect-Install], *[VAS-Redirect-Remove], and*[VAS-Redirect-Rule-Name] fields, the * [Precedence] field (whichindicates the forwarding priority of the VAS; if the field is notcarried, it is considered that the priority is the lowest; for VASs withthe same priority, the system performs forwarding in sequence accordingto the sequence delivered by the rule) may also be added.

Alternatively, VAS information described in Table 2 may also beconfigured on the gateway device, so that the PCRF may send merelyindication information corresponding to a specified forwarding rule (VASinformation), for example, a VAS redirection rule name (*VAS-Redirect-Rule-Name) in Table 2, and only the VAS-Redirect-Rule-Namefield is delivered on a Gx interface, which means to activate ordeactivate a certain VAS redirection rule. The PCEF queries a localstatically-configured forwarding rule (stored in a memory database) andobtains information about a VAS to which the service needs to beforwarded.

TABLE 2 Field name Field type Field definition Constraint*VAS-Redirect-Rule-Name Varchar2 (21) Name of a VAS forwarding NOT NULLrule VAS ID 32-bit unsigned VAS ID NOT NULL integer (Unit32) Uplink-VLANID Uint32 Uplink VLAN ID of a VAS NOT NULL Downlink-VLAN ID Uint32Downlink VLAN ID of a NOT NULL VAS Uplink-VAS IP Uint32 Uplink VAS IP ofa VAS NOT NULL Downlink-VAS IP Uint32 Downlink VAS IP of a VAS NOT NULLPrecedence Uint32 Priority OPTIONAL

In this way, a service flow is forwarded, according to prioritiesdefined by a VAS forwarding rule, to corresponding VAS platforms insequence, which can flexibly implement service arrangement. Optionally,in the embodiment of the present invention, before obtaining a seconddata packet from at least one destination VAS, the method furtherincludes:

sending a test message to the at least one destination VAS;

receiving a test response message sent by the at least one destinationVAS; and

determining, according to the test response message, that the at leastone destination VAS is effective. Specifically, in the embodiment of thepresent invention, a gateway device may further provide a VAS statusdetection capability, that is, sending an Internet Control MessageProtocol (ICMP, Internet Control Message Protocol) packet to each VAS ata certain interval (the interval may be set according to a requirement).If the gateway device does not receive an ICMP response for Nconsecutive times (the number of times may be set according to arequirement), it is determined that the VAS is ineffective. Furthermore,optionally, for an ineffective VAS, the gateway device may send an ICMPpacket again after a certain interval (the interval may be set accordingto a requirement). If the gateway device receives an ICMP response for Nconsecutive times, it may be determined that the VAS is effective.Before forwarding a service to a VAS, the PCEF first queries the statusof the VAS. If the VAS is ineffective, the VAS is skipped and a serviceflow is forwarded to a next VAS platform until the service flow does notneed to be forwarded to a VAS. Then the PCEF forwards the service to afinal SP.

In this way, when a service packet needs to be forwarded, it may beimmediately learned whether a destination VAS of the service iseffective, thereby shortening interaction time, increasing a serviceaccess speed, and reducing an impact on user experience.

Alternatively, in the embodiment of the present invention, the PCEF,before forwarding a service to a VAS, may first send an ICMP packet tothe VAS. If an ICMP response is received within a specified time period(the time period may be set according to a requirement), it may bedetermined that the VAS is effective. Otherwise, it is determined thatthe VAS is ineffective. If the VAS is ineffective, the VAS is skippedand a service flow is forwarded to a next VAS platform until the serviceflow does not need to be forwarded to a VAS. Then the PCEF forwards theservice to an SP.

In this way, the gateway device detects status of a corresponding VASonly when necessary, which can reduce an impact on performance of thegateway device.

In the method for controlling service transmission in the embodiment ofthe present invention, status of a VAS is detected, If the VAS isineffective, no data packet is forwarded to the VAS, thereby ensuringnormal access to a service of a user and avoiding failure of access tothe service of the user due to unavailability of a certain VAS. In thefollowing description, as an example instead of a limitation, a policydecision server is described by using a PCRF as an example, and agateway device is described by using a PCEF as an example.

FIG. 2 shows an interaction diagram of a method for controlling servicetransmission according to an embodiment of the present invention. In theembodiment, a user subscribes to a package 1 released by an operator:CNY 10 for 100 MB traffic and free web page adaption service and videooptimization service. The PCRF (policy decision server) may synchronizea subscription relationship of the user from the operator and save thesubscription relationship. In addition, the PCRF may generate andmaintain a subscription information list that records correspondencebetween the user information of the user and the subscriptioninformation (for example, recording a phone number of the user, anidentifier VAS ID of a server (VAS 1) that implements the web adaptionservice, and an identifier VAS ID of a server (VAS 2) that implementsthe video optimization service). In addition, the PCRF may define apriority of the two servers, for example, as an example instead of alimitation, setting the priority to VAS 1>VAS 2, so that the PCEFforwards a service according to the priority (for example, forwardingthe service first to the VAS 1 and then to the VAS 2).

As shown in FIG. 2, in S201, the UE gets online, and an NAS/AAA maysend, for example, a Radius Accounting-Start request message to thePCEF, where the Radius Accounting-Start request message may carry userinformation (for example, a phone number and the like) of the UE or theuser information and status information (for example, the current time,a bearer network, and the like).

In S202, the PCEF may send, for example, a Gx initial credit controlrequest (CCR-I, Credit Control Request-Initial) message to the PCRFthrough, for example, a Gx interface, where the Gx CCR-I request messagemay carry service information of the UE. The service information mayinclude user information or the user information and status information(for example, a phone number, the current time, a bearer network, andthe like). It should be understood that the foregoing Gx CCR-I requestmessage is only an example of the present invention, to which thepresent invention is not limited. Other messages, exchanged between thePCEF and the PCRF, which may carry user information of the UE, shallalso fall within the protection scope of the present invention. In thefollowing, the same or similar cases are not described.

In S203, after receiving the Gx CCR-I request message, the PCRF mayquery, according to service information reported by the PCEF,subscription information corresponding to the user information from asubscription information list that is created in advance, so as todetermine a VAS forwarding rule (for example, VAS IDs, VLAN IDs, and IPaddresses of VAS1 and VAS2) corresponding to a service of the UE.

The following is a specific example of a VAS forwarding rule in theimplementation manner shown in FIG. 2:

VAS-Redirect-Install

-   -   VAS-Redirect-Rule-Name=ContentAdaptation

VAS-ID=VAS 1

Uplink-VLANID=1

Downlink-VLANID=2

Uplink-VASIP=10.10.10.1

Downlink-VASIP=10.10.10.1

Precedence=1

VAS-Redirect-Install

-   -   VAS-Redirect-Rule-Name=VideoOptimization

VAS-ID=VAS2

Uplink-VLANID=3

Downlink-VLANID=4

Uplink-VASIP=10.10.10.2

Downlink-VASIP=10.10.10.2

Precedence=2

The foregoing VAS forwarding rule may be encoded in binary formataccording to specifications. As shown in the foregoing content, in theforegoing forwarding rule, the priority of ContentAdaptation is higherthan that of VideoOptimization.

In S204, the PCRF delivers the VAS forwarding rule to the PCEF by usinga Gx credit control answer (CCA, Credit Control Answer) message. Inaddition, as described in the foregoing, the PCRF may deliver merely aVAS information indication identifier (for example, *VAS-Redirect-Rule-Name) used to indicate the VAS forwarding rule, andmay also deliver all information of the VAS forwarding rule.

In S205, the PCEF determines and temporarily stores the VAS forwardingrule.

In S206, the UE initiates a Transfer Control Protocol (TCP, TransferControl Protocol) connection and sends a data packet to the SP through agateway device.

In S207, the PCEF forwards the data packet to the VAS1 according to theVAS forwarding rule.

In S208, the VAS1 performs value-added processing on the data packet andsends the processed data packet back to the PCEF.

In S209, the PCEF forwards the data packet to the VAS2 according to theVAS forwarding rule.

In S210, the VAS2 performs value-added processing on the data packet andsends the processed data packet back to the PCEF.

In S211, the PCEF sends the processed data packet to the SP.

In S212, the SP returns a response packet to the UE through the gatewaydevice.

In S213, the PCEF forwards the response packet to the VAS2 according tothe VAS forwarding rule.

In S214, the VAS2 performs value-added processing on the response packetand sends the processed response packet back to the PCEF.

In S215, the PCEF forwards the response packet to the VAS1 according tothe VAS forwarding rule.

In S216, the VAS1 performs value-added processing on the response packetand sends the processed response packet back to the PCEF.

In S217, the PCEF sends the processed response packet to the UE.

Optionally, in the embodiment of the present invention, the obtainingstatus information that is used to indicate service status of theservice includes:

obtaining first status information that is used to indicate initialservice status of the service;

the determining the VAS information according to the user informationand the status information includes:

determining, according to the user information and the first statusinformation, first VAS information; and

the method further includes:

determining that the initial service status changes;

obtaining second status information that is used to indicate the changedservice status of the service; and

the determining VAS information according to the user informationfurther includes:

determining, according to the user information and the second statusinformation, second VAS information.

Specifically, FIG. 3 shows an interaction diagram of a method forcontrolling service transmission according to another embodiment of thepresent invention. In the embodiment, a user subscribes to a package 2released by an operator: CNY 10 for 100M traffic and free onlineantivirus service, provided by the VAS 3 server, in a time period from08:00 to 20:00. The PCRF (policy decision server) may synchronize asubscription relationship of the user from the operator and save thesubscription relationship. In addition, the PCRF may generate andmaintain a subscription information list that records correspondencebetween user information of the user and subscription information (forexample, recording a phone number of the user and a VAS ID of a server(VAS 3) that implements the antivirus service).

As shown in FIG. 3, in S301, the UE gets online at 08:00, and an NAS/AAAmay send, for example, a Radius Accounting-Start request message to thePCEF, where the Radius Accounting-Start request message may carry userinformation (for example, a phone number and the like) of the UE.

In S302, the PCEF may send, for example, a Gx CCR-I message to the PCRFthrough, for example, a Gx interface, where the Gx CCR-I request messagemay carry the user information.

In S303, after receiving the Gx CCR-I request message, the PCRF mayquery, according to service information reported by the PCEF,subscription information corresponding to the user information from asubscription information list that is created in advance, so as todetermine a VAS forwarding rule, for example, a VAS ID, a VLAN ID, andan IP address of VAS3, corresponding to a service of the UE.

In S304, the PCRF delivers the VAS forwarding rule to the PCEF by usinga Gx CCA message. In addition, as described in the foregoing, the PCRFmay deliver merely a VAS information indication identifier (forexample, * VAS-Redirect-Rule-Name) used to indicate the VAS forwardingrule, and may also deliver all information of the VAS forwarding rule.

In S305, the PCEF determines and temporarily stores the VAS forwardingrule.

In S306, the UE initiates a TCP link and sends a data packet to the SPthrough a gateway device.

In S307, the PCEF forwards the data packet to the VAS3 according to theVAS forwarding rule.

In S308, the VAS 3 performs value-added processing on the data packetand sends the processed data packet back to the PCEF.

In S309, the PCEF sends the processed data packet to the SP.

In S310, the SP returns a response packet to the UE through the gatewaydevice.

In S311, the PCEF forwards the response packet to the VAS3 according tothe VAS forwarding rule.

In S312, the VAS3 performs value-added processing on the response packetand sends the processed response packet back to the PCEF.

In S313, the PCEF sends the processed response packet to the UE.

In S314, the PCRF monitors that the current system time is 20:00 anddelivers a policy (for example, the foregoing VAS-Redirect-Rule-Removefield) used to instruct the PCEF to cancel the current VAS forwardingrule and an updated VAS forwarding rule by using a Gx re-approvalrequest (RAR, Re-Authorize Request) message.

In S315, the PCEF may return a Gx re-approval answer (RAR, Re-AuthorizeAnswer) message to the PCRF.

In S316, the PCEF deletes the current VAS forwarding rule and saves theupdated VAS forwarding rule.

In S317, the UE initiates a TCP link and sends a data packet to the SPthrough a gateway device.

In S318, the PCEF directly forwards the data packet to the SP accordingto the VAS forwarding rule.

In S319, the SP returns a response packet to the UE through the gatewaydevice.

In S320, the gateway device forwards the response packet to the UE.

The foregoing describes an embodiment where the PCRF (policy decisionserver), in a case that the current service status changes (service timespecified in subscription information is exceeded), delivers an updatedVAS forwarding policy to replace the current VAS forwarding policystored in the PCEF (gateway device). However, the present invention isnot limited to the foregoing embodiment. The PCRF may also carry a pieceof indication information in a Gx CCR-I message for the PCEF (gatewaydevice) to determine that the current service status has changed, deletethe current VAS forwarding policy stored, and send a Gx credit controlupdate request (CCRU, Credit Control Request-Update) message to the PCRFto obtain an updated VAS forwarding policy. The PCRF delivers a VASforwarding policy in the current status to the PCEF by using a Gx creditcontrol update answer (CCRU, Credit Control Answer-Update) message.

The foregoing describes an embodiment where a gateway device, in a casethat the current status changes, obtains a VAS forwarding rule again.However, the present invention is not limited to the foregoingembodiment. The gateway device may also obtain VAS forwarding rules indifferent service status at one time and select a corresponding VASforwarding rule for use according to the service status.

Specifically, a dynamic rule interface may be used between a PCRF and aPCEF in a PCC architecture. All forwarding rules of VAS information(VAS1 and VAS2) in different status are delivered to the PCEF by using,for example, a Gx message. It should be understood that, according tothe situation, more VAS information may also be included, which is notspecifically limited by the present invention. Here, for ease ofdescription, describes an example that includes information of only twoVASs. In this case, in a Gx message, other than the foregoing*[VAS-Redirect-Install], *[VAS-Redirect-Remove],*[VAS-Redirect-Rule-Name, and * [Precedence] fields, the *[Condition]field (indicating a use condition of the VAS, for example, it may be usetime or use network) may also be added.

In addition, alternatively, a static rule interface may be used betweenthe PCRF and the PCEF in the PCC architecture. That is, VAS informationdescribed in Table 3 may be configured in the PCEF in advance, so thatthe PCRF may send merely indication information corresponding to aspecified forwarding rule (VAS information), for example, a VASredirection rule name (* VAS-Redirect-Rule-Name) in Table 2, and deliveronly the VAS-Redirect-Rule-Name field on the Gx interface, which meansto activate or deactivate a certain VAS redirection rule. The PCEFqueries a local statically-configured forwarding rule (stored in amemory database) and obtains VAS information about a VAS to which theservice needs to be forwarded.

TABLE 3 Field name Field type Field definition Constraint*VAS-Redirect-Rule-Name Varchar2 (21) Name of a VAS forwarding NOT NULLrule VAS ID 32-bit unsigned VAS ID NOT NULL integer (Unit32) Uplink-VLANID Uint32 Uplink VLAN ID of a VAS NOT NULL Downlink-VLAN ID Uint32Downlink VLAN ID of a NOT NULL VAS Uplink-VAS IP Uint32 Uplink VAS IP ofa VAS NOT NULL Downlink-VAS IP Uint32 Downlink VAS IP of a VAS NOT NULLPrecedence Uint32 Priority OPTIONAL Condition Uint32 Use conditionOPTIONAL

Therefore, the PCEF may forward, in different service status, a datapacket according to different VAS information (VAS forwarding rule).

In the method for controlling service transmission in the embodiment ofthe present invention, a VAS performs value-added processing on a datapacket, and returns the data packet to a gateway device, allowing thegateway device to perform service arrangement flexibly according todynamic information about a user.

For a TCP link, specifically, in the embodiment of the presentinvention, a gateway device may further provide a VAS status detectioncapability, that is, sending an Internet Control Message Protocol (ICMP,Internet Control Message Protocol) packet to each VAS at a certaininterval (the interval may be set according to a requirement). If thegateway device does not receive an ICMP response for N consecutive times(the number of times may be set according to a requirement), it isdetermined that the VAS is ineffective. Furthermore, optionally, for anineffective VAS, the gateway device may send an ICMP packet again aftera certain interval (the interval may be set according to a requirement).If the gateway device receives an ICMP response for N consecutive times,it may be determined that the VAS is effective. Before forwarding aservice to a VAS, the PCEF first queries the status of the VAS. If theVAS is ineffective, the VAS is skipped and a service flow is forwardedto a next VAS platform until the service flow does not need to beforwarded to a VAS. Then the PCEF forwards the service to a final SP.

In this way, when a service packet needs to be forwarded, it may beimmediately learned whether a destination VAS of the service iseffective, thereby shortening interaction time, increasing a serviceaccess speed, and reducing an impact on user experience.

Alternatively, in the embodiment of the present invention, the PCEF,before forwarding a service to a VAS, may first send an ICMP packet tothe VAS. If an ICMP response is received within a specified time period(the time period may be set according to a requirement), it may bedetermined that the VAS is effective. Otherwise, it is determined thatthe VAS is ineffective. If the VAS is ineffective, the VAS is skippedand a service flow is forwarded to a next VAS platform until the serviceflow does not need to be forwarded to a VAS. Then the PCEF forwards theservice to an SP.

In this way, the gateway device detects status of a corresponding VASonly when necessary, which can reduce an impact on performance of thegateway device.

In the method for controlling service transmission in the embodiment ofthe present invention, status of a VAS is detected. If the VAS isineffective, no data packet is forwarded to the VAS, thereby ensuringnormal access to a service of a user and avoiding failure of access tothe service of the user due to unavailability of a certain VAS. In thefollowing description, as an example instead of a limitation, a policydecision server is described by using a PCRF as an example, and agateway device is described by using a PCEF as an example.

With reference to FIG. 1 to FIG. 3, the foregoing describes the methodfor controlling service transmission in details according to theembodiments of the present invention. With reference to FIG. 4, thefollowing describes an apparatus for controlling service transmission indetails according to an embodiment of the present invention.

FIG. 4 shows a schematic block diagram of an apparatus 500 forcontrolling service transmission according to an embodiment of thepresent invention. As shown in FIG. 5, the apparatus 500 includes:

a receiving unit 510, configured to receive a connection request messagesent by a piece of user equipment that transmits a service, where theconnection request message includes user information of the userequipment;

a determining unit 520, configured to determine value-added servicesystem VAS information according to the user information, where the VASinformation is used to indicate at least one destination VAS of theservice;

the receiving unit 510, further configured to receive a first datapacket of the service that is sent by a sending end;

an obtaining unit 530, configured to obtain a second data packet fromthe at least one destination VAS according to the VAS information, wherethe second data packet is a data packet obtained after the at least onedestination VAS performs value-added processing on the first datapacket; and

a sending unit 540, configured to send the second data packet to areceiving end.

Optionally, in the embodiment of the present invention, the determiningunit 520 is further configured to obtain status information that is usedto indicate service status of the service; and

to determine the VAS information according to the user information andthe status information.

Optionally, in the embodiment of the present invention, the determiningunit 520 is further configured to obtain first status information thatis used to indicate initial service status of the service;

to determine that the initial service status changes;

to obtain second status information that is used to indicate the changedservice status of the service; and

to determine second VAS information according to the user informationand the second status information.

In addition, the status information obtained by the determining unit 520includes time information used to indicate the current time and/orbearer information used to indicate a current bearer network of theservice.

According to the apparatus for controlling service transmission in theembodiment of the present invention, service arrangement can beperformed flexibly for a value-added service of each VAS when avalue-added service subscribed by a user changes with a triggercondition.

Optionally, in the embodiment of the prevent invention, the VASinformation determined by the determining unit 520 is used to indicateat least two destination VASs of the service; and the obtaining unit 530includes:

a sending module, configured to send the first data packet to a firstdestination VAS according to the VAS information;

a receiving module, configured to receive a third data packet sent bythe first destination VAS, where the third data packet is a data packetobtained after the first destination VAS performs value-added processingon the first data packet;

the sending module is further configured to send the third data packetto a second destination VAS according to the VAS information; and

the receiving module is further configured to receive a data packet sentby the second destination VAS, where the data packet is obtained afterthe second destination VAS performs value-added processing on the thirddata packet, and the data packet obtained after the second destinationVAS performs value-added processing on the third data packet is a seconddata packet; or to send a data packet obtained after the seconddestination VAS performs value-added processing on the third data packetto at least another one destination VAS, so that the at least anotherone destination VAS performs value-added processing again on the datapacket obtained after the second destination VAS performs value-addedprocessing on the third data packet, and uses the data packet obtainedafter the at least one another destination VAS performs value-addedprocessing again on the data packet, which is obtained after the seconddestination VAS performs value-added processing on the third datapacket, as the second data packet.

In addition, in the embodiment of the present invention, the determiningunit 520 is further configured to determine priority information that isused to indicate a sequence for sending a data packet in the at leasttwo VASs; and

the obtaining unit 530 is further configured to obtain, according to theVAS information and the priority information, a second data packet fromthe at least one destination VAS.

Optionally, in the embodiment of the present invention, the determiningunit 520 is further configured to obtain, according to the userinformation, the VAS information from a first database generated basedon correspondence between the user information and the VAS information.

Optionally, in the embodiment of the present invention, the determiningunit 520 is further configured to obtain, according to the userinformation and the status information, the VAS information from asecond database generated based on correspondence between the userinformation and status information and the VAS information.

Optionally, in the embodiment of the present invention, the sending unit540 is further configured to send a first policy request message thatincludes the user information to a policy decision server;

the receiving unit 510 is further configured to receive a first policyrequest answer message that includes first control information and issent by the policy decision server, where the first control informationis determined by the policy decision server according to the userinformation and is used to indicate the VAS information; and

the determining unit 520 is further configured to determine the VASinformation according to the first control information.

Optionally, in the embodiment of the prevent invention, the determiningunit 520 is specifically configured to determine the VAS informationaccording to a VAS information indication identifier included in thefirst control information; or

to obtain the VAS information from the first control information.

Optionally, in the embodiment of the present invention, the determiningunit 520 is further configured to obtain, according to the userinformation, the VAS information from a first database generated basedon correspondence between the user information and the VAS information.

Optionally, in the embodiment of the present invention, the sending unit540 is further configured to send a second policy request message thatincludes the user information and the status information to a policydecision server;

the receiving unit 510 is further configured to receive a second policyrequest answer message that includes second control information and issent by the policy decision server, where the second control informationis determined by the policy decision server according to the userinformation and the status information and is used to indicate the VASinformation; and

the determining unit 520 is configured to determine the VAS informationaccording to the second control information.

Optionally, in the embodiment of the prevent invention, the determiningunit 520 is specifically configured to determine the VAS informationaccording to a VAS information indication identifier included in thesecond control information; or

to obtain the VAS information from the second control information.

In this way, specific VAS information is configured on the gatewaydevice, so that the policy decision server can complete indication of aforwarding rule, namely, VAS information, by merely deliveringindication information, thereby shortening interaction time, increasinga service access speed, and reducing an impact on user experience.

Optionally, in the embodiment of the present invention, the determiningunit 520 is further configured to obtain the VAS information from thecontrol information.

In this way, all VAS information is configured outside a gateway device,thereby minimizing an impact on performance of a network device.

In the apparatus for controlling service transmission in the embodimentof the present invention, a policy decision server deployed outside agateway device determines control information of the service, and thegateway device controls service transmission according to the controlinformation, thereby reducing an impact of service forwarding accordingto dynamic information about a user on performance of the gatewaydevice, maintaining continuous update for a piece of user equipment, andreducing network maintenance workload.

Optionally, in the embodiment of the present invention, the sending unit540 is further configured to send a test message to the at least onedestination VAS;

the receiving unit 510 is further configured to receive a test responsemessage sent by the at least one destination VAS; and

the determining unit 520 is further configured to determine, accordingto the test response message, that the at least one destination VAS iseffective.

In the apparatus for controlling service transmission in the embodimentof the present invention, status of a VAS is detected. If the VAS isineffective, no data packet is forwarded to the VAS, thereby ensuringnormal access to a service of a user and avoiding failure of access tothe service of the user due to unavailability of a certain VAS.

In the embodiment of the present invention, the VAS information includesa VAS identifier ID, a virtual local area network VLAN ID of the VAS,and an Internet Protocol IP address of the VAS.

In the embodiment of the present invention, the user informationincludes at least one of a mobile subscriber phone number MSISDN, aninternational mobile subscriber identifier IMSI, an international mobileequipment identity IMEI, and a server Internet Protocol IP address.

The apparatus 500 for controlling service transmission according to theembodiment of the present invention may correspond to a gateway device(for example, a PCEF) in a method in the embodiment of the presentinvention. In addition, all units, namely, modules and the foregoingother operations and/or functions in the apparatus 500 for establishinga communication connection are used to implement a corresponding processof the method 100 in FIG. 1. For brevity, details are not repeatedlydescribed herein.

In the apparatus for controlling service transmission in the embodimentof the present invention, a VAS performs value-added processing on adata packet, and returns the data packet to a gateway device, allowingthe gateway device to perform service arrangement flexibly according todynamic information about a user. FIG. 5 a is a schematic architecturediagram of another system according to an implementation manner of thepresent invention. With reference to FIG. 5 a, a system for controllingservice transmission in the communications system may be a systemconsisting of the foregoing policy decision server and gateway device.Specifically, it may be a system consisting of multiple computers andmay also be a single device, or be distributed on different networknodes, which is not limited by the present invention. The userequipment, as described in the foregoing, may be any type of mobile ornon-mobile user equipment. A service server may be any server thatprovides a specific service, for example, an online antivirus server, avideo optimization server, an HTTP cache acceleration server, or thelike, which is not limited by the implementation manners A piece of userequipment in the system connects to and communicates with one or moreservice servers through the system for controlling service transmission,and the involved communication connection technologies are notrepeatedly described herein.

Alternatively, FIG. 5 b and FIG. 5 c show schematic architecturediagrams of another system according to an implementation manner of thepresent invention. The system for controlling service transmission inthe system uses a policy and charging control (PCC, Policy and ChargingControl) architecture. In FIG. 5 b, directed arrows from the userequipment to the PCEF, the first service server, the second serviceserver, and the original destination server in sequence indicate a trendof an uplink service flow. In FIG. 5 c, directed arrows from theoriginal destination server to the second service server, the firstservice server, the PCEF, and the user equipment in sequence indicate atrend of a downlink service flow.

Systems shown in FIG. 5 a, FIG. 5 b, and FIG. 5 c may implement themethods for controlling service transmission in the following. Operatingprinciples of the systems are described as in the methods.

As shown in FIG. 6, it is a simplified schematic flowchart of a methodfor controlling service transmission according to an implementationmanner. The method includes the following sections:

10: receiving, by a system for controlling service transmission,communication data sent by a piece of user equipment, where thecommunication data carries information about an original destinationserver (which is referred to as a receiving section Receiving Section);

Specifically, the communication data sent by the user equipment is acollective name of all signaling sent by the user equipment, forexample, a data service activation request or a data service changerequest at a communication link establishing stage, or a service requestat an actual service communication stage.

20: obtaining, according to the communication data, any one or anycombination of dynamic information about a user of the user equipmentand service layer information of the communication data; (which isreferred to as an obtaining section Obtaining Section);

Specifically, the dynamic information about the user refers to a phonenumber of the user of the user equipment, an IMSI of the user, an IPaddress of the user, service subscription information of the user, abearer type of a current network, or the like. The service layerinformation refers to service-related L7 layer or L7+ layer information(also known as an application layer). Certainly, in the “obtainingsection”, any combination of the foregoing information may be obtained,for example, combination of various dynamic information about a user,combination of various service layer information, or combination ofvarious dynamic information about a user and service layer information.

It should be noted that a process of obtaining dynamic information abouta user and a process of obtaining service layer information may becarried out at different stages of a communication process, and arerespectively described in the implementation manners of FIG. 7 a andFIG. 7 b in the following.

30: determining a forwarding policy according to any one or anycombination of the obtained dynamic information about the user and theobtained service layer information, where the forwarding policyincludes: forwarding service data sent by the user equipment to at leastone service server, and the at least one service server is differentfrom the original destination server carried in the communication data(which is referred to as a forwarding policy determining sectionDetermining Policy of Transfer Section); and

For ease of understanding, service data sent by the user equipment is acollective name of various signaling sent by the user equipment at theactual service communication stage. Specifically, if the communicationdata sent by the user equipment in the receiving section 10 is sent atthe communication link establishing stage, the service data here isservice data (that is, service data sent by the user equipment after thecommunication data is sent, for example, a service request, and thelike) sent by the user equipment after a communication link isestablished. If the communication data sent by the user equipment in thereceiving section 10 is sent at the service communication stage, theservice data here is the same as the communication data in the receivingsection 10 and the obtaining section 20.

40: control to implementing (control to implement) the followingprocedure: sending the service data sent by the user equipment to the atleast one service server, receiving the service data processed by the atleast one service server, and sending the received service data that ishas been processed to the original destination server carried in thecommunication data (which is referred to as a control executing sectionControl to Implement Section).

By using the implementation manner shown in FIG. 6, the system forcontrolling service transmission may perform control and processingflexibly for a service according to the dynamic information about theuser or the service layer information, and in particular, forward aservice to a service server other than the original destination serviceserver, enriching communications services while avoiding repeatedtransmission of oversize communication data. In particular, the userequipment does not need to send related service data to differentservice servers at multiple times, saving communications resources tosome extent and improving communication efficiency.

Specifically, in the implementation manner shown in FIG. 6, each sectionmay change according to different service scenarios, at least includingmore specific solutions as shown in FIG. 7 a and FIG. 7 b. Withreference to FIG. 7 a, an implementation manner of a method forcontrolling service transmission includes:

10A: Receiving Section:

receiving, by a system for controlling service transmission, a dataservice activation request or a data service change request sent by apiece of user equipment, where the request carries information about anoriginal destination server.

20 a: Obtaining Section:

parsing the data service activation request or the data service changerequest to obtain dynamic information about a user, or obtaining,through querying, dynamic information about a user according to a resultof the parsing. Dynamic information about a user includes but is notlimited to a phone number of the user, an IMSI of the user, an IPaddress of the user, service subscription information of the user, abearer type of a current network, or the like. In a specific example,according to the architecture of each existing communications network,information (for example, an IMSI or IP address of a user) thatidentifies a user identity may be obtained first by parsing, and then aserver or database that stores user-related information on acommunications network may be queried to obtain corresponding servicesubscription information, and the like.

30A: Forwarding Policy Determining Section:

determining a forwarding policy according to the obtained dynamicinformation about the user, where the forwarding policy includes:forwarding service data sent by the user equipment to at least oneservice server, and the at least one service server is different fromthe original destination server carried in the communication data.

For example, the forwarding policy may include: sending a servicerequest of a piece of user equipment to a certain service server, wherea phone number of the user equipment is within a certain phone numbersegment.

40A: control executing section: receiving a service request sent by theuser equipment, sending the service request to the at least one serviceserver, receiving the service data processed by the at least one serviceserver, and sending the received service data that has been processed tothe original destination server carried in the communication data (whichis referred to as a control executing section). The service request sentby the user equipment is sent after the foregoing communication data (adata service activation request or a data service change request) issent by the user equipment.

Alternatively, FIG. 7 b provides an implementation manner of anothermethod for controlling service transmission, including:

10B: Receiving Section:

receiving, by a system for controlling service transmission, a servicerequest sent by a piece of user equipment, where the request carriesinformation about an original destination server.

20B: Obtaining Section:

performing, according to the service request of the user, in-depth dataanalysis to obtain the service layer information of the service request.Specifically, in-depth data analysis may apply any possible technicalsolution in the prior art to parse the service request and obtainservice layer information, in particular, layer 7 or layer 7+information (L7+ layer), specifically, information at application layer7 such as a protocol (P2P/Email/HTTP, and on the like), and layer 7+information such as an HTTP domain name website under the HTTP protocol.

30B: Forwarding Policy Determining Section:

determining a forwarding policy according to the obtained service layerinformation, where the forwarding policy includes: forwarding servicedata sent by the user equipment to at least one service server, and theat least one service server is different from the original destinationserver carried in the communication data.

Specifically, for example, determine, according to the obtainedinformation that the service request is an Email protocol, the followingforwarding policy: a service request being the Email protocol needs tobe forwarded to an antivirus service server and then to the originaldestination server (Email server).

40B: Control Executing Section:

sending, by the system for controlling service transmission, accordingto the control policy in 30B, the service request to at least oneservice server, receiving the service data processed by the at least oneservice server, and sending the received service data that has beenprocessed to the original destination server carried in thecommunication data.

Specifically, as described in the foregoing example, first send theEmail service request to the antivirus service server, receive servicedata that is obtained through antivirus processing by the antivirusservice server, and then send the service data obtained throughantivirus processing to the Email server.

A person of ordinary skill in the art may know that the solutions inFIG. 7 a and FIG. 7 b may be broken down and combined in a case freefrom a logical contradiction. For example, steps 10A, 20A, 10B, and 20Bare carried out first, and then the “forwarding policy determiningsection” is carried out. That is, a corresponding forwarding policy maybe determined based on any combination of dynamic information about auser and service layer information. For example, a forwarding policy maybe obtained based on user subscription information and service layerinformation. Specifically, for example, if a user subscribes to an“email antivirus service” and a service request sent by the user is anEmail service request, a forwarding policy is determined: forwarding aservice request to an antivirus service server and then to the originaldestination server (Email server).

A person skilled in the art may know that, compared with a solution thatperforms service steering by using a static policy, with the foregoingmore flexible policy settings, a solution that uses a forwarding policyfor multiple combinations of user dynamic information and service layerinformation does not need to steer all communication data (traffic) at afixed IP/Port as under a static policy, thereby reducing a performancerequirement of a back-end system, saving communications resources, andeasing occupation of a communications system.

The foregoing implementation manners may use different communicationsprotocols, such as the TCP/IP protocol or UDP protocol. In a system thatuses the TCP/IP protocol, an implementation manner of the method forcontrolling service transmission shown in FIG. 8 is provided, so that aservice server other than each origination destination server can senselink status of a user request, thereby reducing a packet processingrequirement for the service server. The implementation manner may bebased on the foregoing implementation manners, where a differencethereof lies in that a TCP three-way handshake packet may be furtherconstructed for each service server after a service request ispreliminarily parsed (for example, identifying a service protocol or anHTTP protocol). The implementation manner may further enable a system toapply to a service server with various basic capabilities, reducing adifficulty in integrating a system for controlling service transmissionwith a service server.

In the method shown in FIG. 8, that a first service server and a secondservice server are service servers is used as an example, and the methodincludes:

001: A system for controlling service transmission (for example, a TCPprotocol processing module 500 of the system) determines that anoriginal destination server and at least one service server support theTCP protocol. Specifically, the system for controlling servicetransmission may determine, according to a protocol field incommunication data sent by a piece of user equipment, whether the TCP/IPprotocol is used.

002-003: The system for controlling system transmission (in particular,for example, the TCP protocol processing module 500 of the system)receives a TCP three-way handshake packet sent by the user equipment andforwards the TCP three-way handshake packet sent by the user equipmentto the original destination server.

For clear and easy understanding of a three-way handshake signalingprocess in the implementation manner, the following describes basicprinciples of a TCP/IP protocol three-way handshake. The TCP/IP protocolis generally used to send mass data. TCP is also used when anapplication program needs to make an acknowledgment after receivingdata. To provide reliable transmission, the TCP/IP protocol numbers adata packet in a specific order sequence before sending new data andrequires an acknowledgment message after the data packet is sent to thetarget machine. The so-called “three-way handshake” (three timeshandshake; three-way handshaking) is to negotiate how to track datavolume sent each time to synchronize sending and receiving of a datasegment, how many data acknowledgments to be determined according to thereceived data volume, and when to withdraw an association after datasending and receiving is completed, and establish a virtual link.

In the TCP/IP protocol, the TCP/IP protocol provides a reliableconnection service and establishes a link by using a three-wayhandshake. That the two communication parties are a piece of userequipment and a server is used as an example, main content of thethree-way handshake includes: a first handshake: when a connection isbeing established, the user equipment sends an syn packet (syn j) to theserver, enters the SYN SEND state, and waits for an acknowledgment fromthe server; SYN: synchronize sequence number (Synchronize SequenceNumbers); a second handshake: the server receives the syn packet,confirms an ACK (ack=j+1) of a customer, at the same time, sends an SYNpacket (syn=k), namely, an SYN+ACK packet, and enters the SYN RECVstate; and a third handshake: the user equipment receives the SYN+ACKpacket sent by the server and sends an acknowledgment packet ACK(ack=k+1) to the server; after the packet is sent, the user equipmentand the server enter the ESTABLISHED state, thereby completing thethree-way handshake. After the three-way handshake is completed, theuser equipment and the server may start transmitting data. After theforegoing processing of the TCP three-way handshake packet in the002C-003C, the system for controlling service transmission establishes aTCP link between the user equipment and the original destination server.The system for controlling service transmission may allocate a userequipment side socket Socket1 and an original destination server sidesocket Socket2. A socket, which means a socket originally, is generallyreferred to as a “socket” in a concept of a Unix communicationmechanism, is used to describe an IP address and a port, and serves as ahandle of a communication link.

10B′: The system for controlling service transmission (in particular,for example, an obtaining module (M200)) receives service data sent bythe user equipment through the TCP link between the user equipment andthe original destination server, where the service data carriesinformation about the original destination server.

Execute 20B′-30B′, of which the specific procedure is similar to 10B-30Bshown in FIG. 7 b. Specifically, 20B′ obtaining section: performing,according to a service request of a user, in-depth data analysis toobtain the service layer information of the service request; and 30B′forwarding policy determining section: determining a forwarding policyaccording to the obtained service layer information, where theforwarding policy includes: forwarding service data sent by the userequipment to at least one service server, and the at least one serviceserver is different from the original destination server carried in thecommunication data. For specific examples, reference may be made to thedescription of 10B-30B in the foregoing, and details are not repeatedlydescribed herein.

31: After the 30B′ forwarding policy determining section, the system forcontrolling service transmission (in particular, for example, a TCP linkreconstructing module 600 of the system) shuts down the TCP link betweenthe system for controlling service transmission and the originaldestination server, constructs a new TCP three-way handshake packet,sends the new TCP three-way handshake packet to each service server, andthen recovers the TCP link between a gateway device and the originaldestination server, specifically, including:

shutting down, by the system for controlling service transmission, theTCP link between the system for controlling service transmission and theoriginal destination server, where various technical solutions may beused in the process for shutting down the TCP link, for example, sendingRST signaling;

constructing a new TCP three-way handshake packet according to the TCPthree-way handshake packet between the user equipment and the originaldestination server, where the new TCP three-way handshake packetincludes sender information and original destination server informationin the TCP three-way handshake packet, and information about the atleast one service server to which the new TCP three-way handshake packetneeds to be forwarded, and, specifically, the information about the atleast one service server includes: a VLAN identifier of the at least oneservice server, a tunnel identifier of the at least one service server,or a physical port identifier of the at least one service server; andsending the new TCP three-way handshake packet to the originaldestination server through the at least one service server, so as torecover the TCP link between the system for controlling servicetransmission and the original destination server. Based on the foregoingprocessing, each service server can sense link status of a user request,or a reliable TCP link is established between each service server andthe user equipment or the original destination server.

40B′: Based on the foregoing newly established TCP link that can besensed by each service server, the system for controlling servicetransmission (specifically, for example, a control executing module(M400) completes the control executing section, and executing detailsare not repeatedly described herein.

A person skilled in the art may know that, for an original destinationserver or a service server that uses the UDP protocol, the system forcontrolling service transmission may exclude the foregoing handshakepacket forwarding process.

Based on the foregoing methods for controlling service transmission (forexample, methods shown in FIG. 1, FIG. 2, FIG. 3, FIG. 6, FIG. 7 a, FIG.7 b, and FIG. 8), a person skilled in the art may know that theforwarding policy in the previously described implementation manners mayinclude: information about multiple service servers that need to receiveservice data sent by the user equipment and a sequence of the multipleservice servers. Correspondingly, the control executing sectionincludes: sending service data sent by the user equipment to a serviceserver ranked top among the service servers, receiving the service dataprocessed by the service server ranked top among the service servers,sending the received service data that has been processed to a nextservice server ranked behind among the service servers, receiving theservice data processed by the next service server until the service dataprocessed by the multiple service servers is received, and sending thereceived service data processed by the multiple service servers to theoriginal destination server carried in the service data.

In a specific application process, multiple methods may be used toindicate the sequence of the multiple service servers in the forwardingpolicy, where a simple manner saving communications resources includes:identifiers of multiple VLANs that an uplink flow needs to pass insequence, identifiers of multiple tunnels that an uplink flow needs topass in sequence, or identifiers of multiple physical ports that anuplink flow needs to pass in sequence.

In the foregoing solution that indicates the sequence of the multipleservice servers in the forwarding policy, in the control executingsection, a sequence for sending service data is controlled according tothe multiple VLAN identifiers, multiple tunnel identifiers, or multiplephysical port identifiers, where a sequence for sending an uplink flowis the same as that specified in the forwarding policy, and a sequencefor sending a downlink flow is opposite to that specified in theforwarding policy. In this implementation manner, on one hand, simpleinformation that may uniquely identify a service server location isused, and, on the other hand, no resource is wasted specifying a sendingsequence for a downlink flow, significantly reducing occupation ofcommunications resources in the implementation manner from an overallperspective.

Certainly, alternatively, the foregoing forwarding policy in thepreviously mentioned implementation manners may include informationabout multiple service servers that need to receive service data sent bythe user equipment, but excludes a sequence of the multiple serviceservers. In this case, the control executing section includes: sendingservice data sent by the user equipment to the multiple service serversin parallel, and receiving multiple pieces of service data processed bythe multiple service servers; and performing comprehensive processing onthe received service data processed by the multiple service servers,generating new service data, and sending the new service data to theoriginal destination server carried in the service data. Specifically,the comprehensive processing refers to combining or discarding duplicateservice data and generating new service data.

For the foregoing implementation manners, the control executing sectionmay further include:

determining that operating status of any one of the service servers iseffective. In this implementation manner,

the control executing section may further include:

sending service data corresponding to the communication data only to aservice server of which the operating status is confirmed as effective,and receiving the service data processed by the service server; andsending the received service data that has been processed to theoriginal destination server carried in the service data.

For easy understanding of the foregoing implementation manner, a casethat a service flow needs to be forwarded to two service servers underthe TCP/IP protocol is used as an example in the following, and aschematic signaling flowchart diagram shown in FIG. 9 is provided. Inthe implementation manner, a VLAN identifier is used to identify eachnode that includes each service server. The method shown in FIG. 9A, 9B,9C includes:

001C (not shown in the figure): Determine that an original destinationserver, a first service server, a second service server, and the likesupport a TCP/IP protocol. Specifically, the system for controllingservice transmission may determine whether the TCP/IP protocol is usedaccording to a protocol field in communication data sent by a piece ofuser equipment.

002C: The system for controlling service transmission receives a TCPthree-way handshake packet of the user equipment, where, in thethree-way handshake packet, a source address is a user equipmentaddress, and a destination address is an original destination serveraddress, for example, the “OIP:MS,DIP:SP” field in the signaling shownin FIG. 9. In addition, the three-way handshake packet carries anidentifier of an uplink virtual local area network VLAN that comprises apiece of user equipment and a gateway device system for controllingservice transmission, for example, the “VLAN:401” field. For ease ofdescription, the TCP three-way handshake packet sent by the foregoinguser equipment is referred to as a first TCP three-way handshake packetfor short.

003C: The system for controlling service transmission forwards a TCPthree-way handshake request received from the user equipment to theoriginal destination server, where, in the forwarded TCP three-wayhandshake packet, the source address is the user equipment address, andthe destination address is the original destination server address. Inaddition, the forwarded three-way handshake packet carries an identifierof an uplink virtual local area network VLAN that comprises the systemfor controlling service transmission and the original destinationserver, for example, VLAN:402. The original destination server is notspecifically limited, and refers to a service provider that a userequipment user needs to access. For ease of description, the forwardedTCP three-way handshake packet is referred to as a second TCP three-wayhandshake packet for short.

10C: When the system for controlling service transmission receives aservice request (the service request includes VLAN1) of a user,

20C-30C: perform in-depth data analysis and determine a forwardingpolicy according to service layer information obtained through analysis,or with reference to the service layer information and dynamicinformation about the user, for example, identify and parse anapplication layer protocol. Specifically, for the HTTP protocol, a URL(HTTP domain name) may further be parsed and it is determined, withreference to user subscription information, that a service request ofthe user equipment needs to be forwarded to multiple service serverdevices for processing (in a specific implementation manner shown inFIG. 9, the service request needs to be forwarded first to a firstservice server for processing and then to a second service server forprocessing).

31C: The system for controlling service transmission disconnects orshuts down a link (Socket2) established with the original destinationserver and establishes, according to the TCP three-way handshake packet(first TCP three-way handshake packet) between the user equipment andthe original destination server, a TCP link with the first serviceserver and the second service server respectively (it may be interpretedas follows: constructing a new three-way handshake packet by simulatingor referring to the TCP three-way handshake packet between the userequipment and the original destination server, and sending the newthree-way handshake packet to the first service server, second serviceserver, and original destination server), specifically, including:

31C1: Disconnect a link (Socket2) established with the originaldestination server. There may be multiple specific implementationmanners. The implementation manner is implemented by sending an “RST:OIP:MS,DIP:SP,VLAN:402” message.

31C2: A system for controlling service transmission constructs a new SYNpacket according to an SYN packet in a first TCP three-way handshakepacket, where, in the newly constructed SYN packet, a source address isa user equipment address, and a destination address is an originalserver address (this information is the same as the SYN packet in thefirst TCP three-way handshake packet, that is, “simulating or referringto” mentioned in 31C). In addition, the newly constructed SYN packetcarries an identifier of an uplink VLAN that comprises the system forcontrolling service transmission and the first service server. Forexample, the VLAN ID is 410. This helps a networked switch send the SYNpacket to the first service server according to routing data of a VLANindicated by the carried VLAN identifier (410) (all network devices needto forward a packet through a switch). The first service server is atransparent proxy device, and after being processed, the SYN packet istransparently sent back to the system for controlling servicetransmission through a downlink virtual local area network VLAN411,where 411 is the identifier of the downlink VLAN that comprises thesystem for controlling service transmission and the first serviceserver.

31C3: The system for controlling service transmission constructs anothernew SYN packet according to a previously determined forwarding policy,that is, forwarding the SYN packet to a second service server. The SYNpacket includes an identifier 412 of an uplink virtual local areanetwork that comprises the system for controlling service transmissionand the second service server, so that a networked switch sends the SYNpacket to the second service server according to routing data of theVLAN. In the SYN packet, a source address is a user equipment address,and a destination address is an original destination server address(this information is the same as the SYN packet in the first TCPthree-way handshake packet, that is, “simulating or referring to”mentioned in step 31C). The second service server is a transparent proxydevice, and after being processed, the SYN packet is transparently sentback to the system for controlling service transmission through adownlink virtual local area network VLAN413 that comprises the systemfor controlling service transmission and the second service server.

31C4: The system for controlling service transmission constructs a newSYN packet (SYN: OIP:MS,DIP:SP,VLAN:402) according to a previouslydetermined forwarding policy and forwards the new SYN packet to anoriginal destination server through VLAN402 (that is, according torouting data of the VLAN 402). The original destination server returnsan SYN ACK packet to the system for controlling service transmissionthrough VLAN402.

31C5: The system for controlling service transmission constructs a newSYN ACK packet (SYN ACK: OIP:MS,DIP:SP,VLAN:410) according to thereceived SYN ACK packet and forwards the new SYN ACK packet to the firstservice server through VLAN 410 (that is, according to routing data ofthe VLAN 410). After processing, the first service server forwards theSYN ACK packet (SYN ACK: OIP:MS,DIP:SP,VLAN:411) back to the system forcontrolling service transmission through VLAN411 (that is, according torouting data of VLAN 411).

31C6: The system for controlling service transmission constructs an SYNACK packet (SYN ACK: OIP:MS,DIP:SP,VLAN:412) according to a previouslydetermined forwarding policy and forwards the SYN ACK packet to thesecond service server through VLAN412 (that is, according to routingdata of VLAN 412). After processing the SYN ACK packet, the secondservice server sends the SYN ACK packet (SYN ACK:OIP:MS,DIP:SP,VLAN:413) to the system for controlling servicetransmission through VLAN413 (that is, according to routing data of VLAN413).

A person skilled in the art may understand that, in each SYN ACK packet,a source address is a user equipment address, and a destination addressis an original destination server address (this information is the sameas the SYN ACK packet in the TCP three-way handshake packet between theuser equipment and the original destination server, that is, “simulatingor referring to” mentioned in step 31C). In addition, each SYN ACKpacket carries an identifier (for example, 412 and 413) of a VLAN thatcomprises the system for controlling service transmission and the secondservice server.

31C7: After receiving the SYN ACK packet, the system for controllingservice transmission ends the SYN ACK packet (that is, discard thepacket and no longer send the packet), constructs an ACK packet (ACK:OIP:MS,DIP:SP,VLAN:410), and forwards the ACK packet to the firstservice server through VLAN 410. After processing the ACK packet, thefirst service server returns the ACK packet (ACK:OIP:MS,DIP:SP,VLAN:411) to the system for controlling servicetransmission through VLAN 411.

31C8: Similarly, the system for controlling service transmissionconstructs an ACK packet (ACK: OIP:MS,DIP:SP,VLAN:412) and sends the ACKpacket to the second service server through VLAN 413. After processingthe ACK packet, the second service server sends the ACK packet (ACK:OIP:MS,DIP:SP,VLAN: 413) to the system for controlling servicetransmission through VLAN 413.

31C9: The system for controlling service transmission constructs an ACKpacket (ACK: OIP:MS,DIP:SP,VLAN: 402) and sends the ACK packet to theoriginal destination server through VLAN402.

40C: After a TCP link is established between the system for controllingservice transmission and the first service server and the second serviceserver in step 31C, the system for controlling service transmissionforwards a first service request received from a user to the firstservice server and the second service server for processing, and thensends the processed first service request to the original destinationserver, specifically, including:

40C1: The system for controlling service transmission forwards the firstservice request (carrying VLAN:410) received from the user equipment tothe first service server. After performing service processing, the firstservice server generates a second service request (carrying VLAN:411)according to the first service request received from the user and sendsthe second service request back to the system for controlling servicetransmission.

40C2: The system for controlling service transmission forwards thereceived second service request (carrying VLAN:412) that is processed bythe first service server to the second service server. After performingservice processing, the second service server generates a third servicerequest and sends the third service request (carrying VLAN:413) back tothe system for controlling service transmission.

40C3: The system for controlling service transmission sends the thirdservice request (carrying VLAN:402) to the original destination serverand receives a first response packet (carrying VLAN:402) sent by theoriginal destination server.

40C4: The system for controlling service transmission forwards the firstresponse packet (carrying VLAN:412) to the second service server. Afterperforming service processing, the second service server generates asecond response packet according to the first response packet. Thesystem for controlling service transmission receives the second responsepacket (carrying VLAN:413) returned by the second service server.

40C5: The system for controlling service transmission sends the receivedsecond response packet (carrying VLAN:410) to the first service server.After performing service processing, the first service server generatesa third response packet according to the second response packet. Thesystem for controlling service transmission receives the third responsepacket (carrying VLAN:411) processed and returned by the first serviceserver.

40C6: The system for controlling service transmission forwards the thirdresponse packet processed and returned by the first service server tothe user equipment.

As previously mentioned, the system for controlling service transmissionmay use the foregoing PCC architecture and use a dynamic interface modeor a static interface mode to implement related sections 10-40 in theforegoing solutions. The system for controlling service transmissionincludes a PCEF and a PCRF, where the PCEF mainly implements a receivingsection, an obtaining section, and a control executing section. Aforwarding policy determining section is completed by the PCEF and thePCEF in cooperation. For the system architecture, reference may be madeto FIG. 5 b and FIG. 5 c.

Optionally, a dynamic rule interface is used between the PCEF and thePCRF, including:

saving, on the PCRF, the dynamic information about the user and a policycorresponding to the dynamic information about the user, or the servicelayer information and a policy corresponding to the service layerinformation, where the policy includes forwarding the service data to atleast one service server, and the at least one service server isdifferent from the original destination server of the service data.

The foregoing receiving section and forwarding policy determiningsection include:

obtaining, by the PCEF, the dynamic information about the user or theservice layer information of the service data;

initiating, by the PCEF, a request to the PCRF, where the requestcarries the dynamic information about the user or the service layerinformation of the service data;

querying, by the PCRF, a corresponding policy according to the dynamicinformation about the user or the service layer information of theservice data reported by the PCEF, and sending the policy to the PCEF;

temporarily storing, by the PCEF, the received policy corresponding tothe dynamic information about the user or the service layer informationof the service data; and

-   -   determining, by the PCEF, after receiving service data of a        user, to forward the service data to at least one service server        according to the dynamic information about the user or the        service layer information of the service data, and the foregoing        temporarily stored policy.

Optionally, the system for controlling service transmission includes thePCEF and the PCRF, and a static rule interface is used between the PCEFand the PCRF. The method includes:

configuring, locally on the PCRF, the dynamic information about the userand a policy corresponding to the dynamic information about the user, orthe service layer information and a policy corresponding to the servicelayer information, where the policy includes forwarding the service datato at least one service server, and the at least one service server isdifferent from the original destination server carried in the servicedata.

Specifically, the locally configured policy may be activated ordeactivated according to an instruction of the PCRF.

Specifically, the receiving section and forwarding policy determiningsection include:

obtaining, by the PCEF, the dynamic information about the user or theservice layer information of the service data; and

determining, by the PCEF, after receiving service data of a user, toforward the service data to at least one service server according to thedynamic information about the user or the service layer information ofthe service data.

Correspondingly, with reference to FIG. 10, an embodiment of the presentinvention provides a system for controlling service transmission thatmay implement the foregoing methods. The system includes a receivingmodule (M100), an obtaining module (M200), a forwarding policydetermining module (M300), and a control executing module (M400), wherethe modules connect to and communicate with each other.

The receiving module (M100) is configured to receive communication datasent by a piece of user equipment, where the communication data carriesinformation about an original destination server (that is, executing theforegoing receiving section);

the obtaining module (M200) is configured to obtain, according to thecommunication data, any one or any combination of dynamic informationabout the user that sends the communication data, and service layerinformation of the communication data; (that is, executing the foregoingobtaining section);

the forwarding policy determining module (M300) is configured todetermine a forwarding policy according to the obtained any one or anycombination of the dynamic information about the user and the servicelayer information, where the forwarding policy includes: forwarding theservice data sent by the user equipment to at least one service server,and the at least one service server is different from the originaldestination server carried in the communication data (that is, executingthe foregoing forwarding policy determining section); and

the control executing module (M400) is configured to control and executethe following procedure: sending the service data sent by the userequipment to at least one service server, receiving the service dataprocessed by the at least one service server, and sending the receivedservice data that has been processed to the original destination servercarried in the communication data (that is, executing the foregoingcontrol executing section).

A person skilled in the art may understand that modules shown in FIG. 10may implement functions of method sections mentioned in the methodimplementation manners correspondingly. Modules may also be added, forexample, a TCP protocol processing module (500) and a TCP linkreconstructing module (600), to implement the functions of the steps inthe foregoing method implementation manners Details are not repeatedlydescribed herein.

FIG. 11 provides a schematic structural diagram of a system forcontrolling service transmission that may implement each of theforegoing methods. The system for controlling service transmissionincludes at least one processor (1001), for example, a CPU, at least onenetwork interface (1004) or another communication interface (1003),memory (1005), and at least one communication bus (1002). Thecommunication bus (1002) is used to implement connection andcommunication between the foregoing apparatuses. Optionally, the systemfor controlling service transmission includes a user interface (1003),for example, a display, a keyboard, or a clicking device. The memory(1005) may include a high-speed Ram memory and may also include anon-volatile memory (non-volatile memory), for example, at least onedisk memory. Optionally, the memory (1005) may include at least onememory apparatus located far away from the foregoing CPU1001. In someimplementation manners, the memory (1005) stores the following elements,modules, or data structures, or their subsets, or their extension sets:

an operating system (1006), including various programs, configured toimplement various basic services and process hardware-based tasks; and

a receiving module (M100), an obtaining module (M200), a forwardingpolicy determining module (M300), and a control executing module (M400).Functions of each of the modules are as described in the foregoing.Preferably, for working principles of the foregoing modules, referencemay be made to the specific description of the methods shown in FIG. 1to FIG. 3 and FIG. 6 to FIG. 9, and details are not repeatedly describedherein.

It should be understood that sequence numbers of the foregoing processesdo not mean executing sequences in the embodiments of the presentinvention. The executing sequences of the processes shall be determinedaccording to functions and internal logic of the processes, but notconstituting any limitation on the implementation processes of theembodiments of the present invention.

A person of ordinary skill in the art may be aware that, in combinationwith the examples described in the embodiments disclosed in thisspecification, units and algorithm steps may be implemented byelectronic hardware, or a combination of computer software andelectronic hardware. Whether the functions are performed by hardware orsoftware depends on particular applications and design constraintconditions of the technical solutions. A person skilled in the art mayuse different methods to implement the described functions for eachparticular application, but it should not be considered that theimplementation goes beyond the scope of the present invention.

It may be clearly understood by a person skilled in the art that, forthe purpose of convenient and brief description, for a detailed workingprocess of the foregoing system, apparatus, and unit, reference may bemade to a corresponding process in the foregoing method embodiments, anddetails are not described herein again.

In the several embodiments provided in the present application, itshould be understood that the disclosed system, apparatus, and methodmay be implemented in other manners. For example, the describedapparatus embodiment is merely exemplary. For example, the unit divisionis merely logical function division and may be other division in actualimplementation. For example, a plurality of units or components may becombined or integrated into another system, or some features may beignored or not performed. In addition, the displayed or discussed mutualcouplings or direct couplings or communication connections may beimplemented through some interfaces. The indirect couplings orcommunication connections between the apparatuses or units may beimplemented in electronic, mechanical, or other forms.

The units described as separate parts may or may not be physicallyseparate, and parts displayed as units may or may not be physical units,may be located in one position, or may be distributed on a plurality ofnetwork units. A part or all of the units may be selected according toactual needs to achieve the objectives of the solutions of theembodiments.

In addition, functional units in the embodiments of the presentinvention may be integrated into one processing unit, or each of theunits may exist alone physically, or two or more units are integratedinto one unit.

When the functions are implemented in a form of a software functionalunit and sold or used as an independent product, the functions may bestored in a computer-readable storage medium. Based on such anunderstanding, the technical solutions of the present inventionessentially, or the part contributing to the prior art, or a part of thetechnical solutions may be implemented in a form of a software product.The computer software product is stored in a storage medium, andincludes several instructions for instructing a computer device (whichmay be a personal computer, a server, or a network device) to performall or a part of the steps of the methods described in the embodimentsof the present invention. The foregoing storage medium includes: anymedium that can store program code, such as a USB flash drive, aremovable hard disk, a read-only memory (ROM, Read-Only Memory), arandom access memory (RAM, Random Access Memory), a magnetic disc, or anoptical disc.

The foregoing descriptions are merely specific embodiments of thepresent invention, but are not intended to limit the protection scope ofthe present invention. Any variation or replacement readily figured outby a person skilled in the art within the technical scope disclosed inthe present invention shall fall within the protection scope of thepresent invention. Therefore, the protection scope of the presentinvention shall be subject to the protection scope of the claims.

What is claimed is:
 1. A method for controlling service transmission,comprising: receiving a connection request message sent by an userequipment that transmits a service, wherein the connection requestmessage comprises user information of the user equipment; determining,according to the user information, value-added service system (VAS)information, wherein the VAS information indicates at least onedestination VAS for value-added processing of the service; receiving afirst data packet of the service that is sent by a sending end; sendingthe first date packet of the service to the at least one destination VASaccording to the VAS information; obtaining a second data packet fromthe at least one destination VAS, wherein the second data packet is adata packet obtained after the at least one destination VAS performs thevalue-added processing on the first data packet; and sending the seconddata packet to a receiving end.
 2. The method according to claim 1,further comprising: obtaining status information that indicates aservice status of the service; and wherein the determining the VASinformation according to the user information, comprises: determiningthe VAS information according to the user information and the statusinformation.
 3. The method according to claim 2, wherein the obtainingthe status information that indicates the service status of the servicecomprises: obtaining first status information that indicates an initialservice status of the service; the determining the VAS informationaccording to the user information and the status information comprises:determining, according to the user information and the first statusinformation, first VAS information; and the method further comprises:determining that the initial service status changes; obtaining secondstatus information that indicates the changed initiated service statusof the service; and the determining the VAS information according to theuser information further comprises: determining, according to the userinformation and the second status information, second VAS information.4. The method according to claim 2, wherein the status informationcomprises at least one of the following: (a) time information indicatinga current time of the service, and (b) bearer information indicating acurrent bearer network of the service.
 5. The method according to claim1, wherein the VAS information indicates at least two destination VASsof the service; and the obtaining a second data packet from the at leastone destination VAS according to the VAS information comprises: sending,according to the VAS information, the first data packet to a firstdestination VAS; receiving a third data packet sent by the firstdestination VAS, wherein the third data packet is a data packet obtainedafter the first destination VAS performs the value-added processing onthe first data packet; sending, according to the VAS information, thethird data packet to a second destination VAS; and receiving a datapacket that is sent by the second destination VAS, and obtained afterthe second destination VAS performs the value-added processing on thethird data packet; wherein the data packet obtained after the seconddestination VAS performs value-added processing on the third data packetis the second data packet; or the data packet obtained after the seconddestination VAS performs the value-added processing on the third datapacket is sent to at least another one destination VAS as the seconddata packet, to enable the at least another one destination VAS toperform the value-added processing again on the data packet obtainedafter the second destination VAS performs the value-added processing onthe third data packet, and to use the data packet obtained after the atleast one another destination VAS performs the value-added processingagain on the data packet, which is obtained after the second destinationVAS performs the value-added processing on the third data packet.
 6. Themethod according to claim 5, further comprising: determining priorityinformation that is used to indicate a sequence for sending a datapacket in the at least two VASs; and the obtaining the second datapacket from the at least one destination VAS according to the VASinformation comprises: obtaining, according to the VAS information andthe priority information, the second data packet from the at least onedestination VAS.
 7. The method according to claim 1, wherein thedetermining the VAS information according to the user informationcomprises: sending a first policy request message that comprises theuser information to a policy decision server; receiving a first policyrequest answer message that comprises first control information and issent by the policy decision server, wherein the first controlinformation is determined by the policy decision server according to theuser information and indicates the VAS information; and implementing atleast one of the following: (a) determining the VAS informationaccording to a VAS information indication identifier comprised in thefirst control information; and (b) obtaining the VAS information fromthe control information.
 8. The method according to claim 2, wherein thedetermining the VAS information according to the user information andthe status information comprises: sending a second policy requestmessage that comprises the user information and the status informationto a policy decision server; receiving a second policy request answermessage that comprises second control information and is sent by thepolicy decision server, wherein the second control information isdetermined by the policy decision server according to the userinformation and the status information and is used to indicate the VASinformation; and implementing at least one of the following: (a)determining the VAS information according to a VAS informationindication identifier comprised in the first control information; and(b) obtaining the VAS information from the second control information.9. An apparatus for controlling service transmission, comprising aprocessor and a non-transitory processor-readable medium havingprocessor-executable instructions stored thereon, theprocessor-executable instructions including a plurality of units, theunits including: a receiving unit, configured to: receive a connectionrequest message sent by a user equipment that transmits a service; andreceive a first data packet of the service that is sent by a sendingend; wherein the connection request message comprises user informationof the user equipment; a determining unit, configured to determinevalue-added service system VAS information according to the userinformation, wherein the VAS information indicates at least onedestination VAS for value-added processing of the service; an obtainingunit, configured to obtain a second data packet from the at least onedestination VAS according to the VAS information, wherein the seconddata packet is a data packet obtained after the at least one destinationVAS performs the value-added processing on the first data packet; and asending unit, configured to send the first date packet of the service tothe at least one destination VAS according to the VAS information; andsend the second data packet to a receiving end.
 10. The apparatusaccording to claim 9, wherein the determining unit is further configuredto: obtain status information that indicates a service status of theservice; and determine the VAS information according to the userinformation and the status information.
 11. The apparatus according toclaim 9, wherein the determining unit is further configured to: obtainfirst status information that indicates an initial service status of theservice; determine that the initial service status changes; obtainsecond status information that indicates the changed initial servicestatus of the service; and determine second VAS information according tothe user information and the second status information.
 12. Theapparatus according to claim 10, wherein the status information obtainedby the determining unit comprises at least one of the following: (a)time information indicating a current time of the service; and (b)bearer information indicating a current bearer network of the service.13. The apparatus according to claim 9, wherein the VAS informationdetermined by the determining unit indicates at least two destinationVASs of the service; and the obtaining unit comprises: a sending module,configured to send the first data packet to a first destination VASaccording to the VAS information; a receiving module, configured toreceive a third data packet sent by the first destination VAS, whereinthe third data packet is a data packet obtained after the firstdestination VAS performs the value-added processing on the first datapacket; the sending module is further configured to send the third datapacket to a second destination VAS according to the VAS information; thereceiving module is further configured to receive a data packet sent bythe second destination VAS, wherein the data packet is obtained afterthe second destination VAS performs the value-added processing on thethird data packet; and wherein one of the following situations exists:(a) the data packet obtained after the second destination VAS performsthe value-added processing on the third data packet is the second datapacket; and (b) the data packet obtained after the second destinationVAS performs value-added processing on the third data packet is sent toat least another one destination VAS as the second data packet, toenable the at least another one destination VAS to perform thevalue-added processing again on the data packet obtained after thesecond destination VAS performs the value-added processing on the thirddata packet, and to use the data packet obtained after the at least oneanother destination VAS performs the value-added processing again on thedata packet, which is obtained after the second destination VAS performsthe value-added processing on the third data packet.
 14. The apparatusaccording to claim 13, wherein the determining unit is furtherconfigured to determine priority information that indicates a sequencefor sending a data packet in the at least two VASs; and the obtainingunit is further configured to obtain, according to the VAS informationand the priority information, the second data packet from the at leastone destination VAS.
 15. The apparatus according to claim 9, wherein thesending unit is further configured to send a first policy requestmessage that comprises the user information to a policy decision server;the receiving unit is further configured to receive a first policyrequest answer message that comprises first control information and issent by the policy decision server, wherein the first controlinformation is determined by the policy decision server according to theuser information and indicates the VAS information; and the determiningunit is configured to implement at least one of the following: (a)determine the VAS information according to a VAS information indicationidentifier comprised in the first control information; and (b) obtainingthe VAS information from the first control information.
 16. Theapparatus according to claim 12, wherein the sending unit is furtherconfigured to send a second policy request message that comprises theuser information and the status information to a policy decision server;the receiving unit is further configured to receive a second policyrequest answer message that comprises second control information and issent by the policy decision server, wherein the second controlinformation is determined by the policy decision server according to theuser information and the status information and indicates the VASinformation; and the determining unit is configured to implement atleast one of the following: (a) determine the VAS information accordingto a VAS information indication identifier comprised in the firstcontrol information; and (b) obtaining the VAS information from thesecond control information
 17. A communications service processingmethod, comprising: receiving, by a system for controlling servicetransmission, communication data sent by a user equipment, wherein thecommunication data carries information about an original destinationserver; obtaining, according to the communication data, any one or anycombination of (a) dynamic information about the user equipment whichsends the communication data, and (b) service layer information of thecommunication data; determining a forwarding policy according to theobtained any one or any combination of the dynamic information about theuser equipment and the service layer information, wherein the forwardingpolicy comprises: forwarding service data corresponding to thecommunication data to at least one service server, and the at least oneservice server is different from the original destination server carriedin the communication data; and sending the service data corresponding tothe communication data to the at least one service server, receiving theservice data processed by the at least one service server, and sendingthe received service data that has been processed to the originaldestination server carried in the communication data.
 18. The methodaccording to claim 17, wherein: the receiving communication data sent bythe user equipment further comprises: receiving a data serviceactivation request or a data service change request sent by the userequipment; the obtaining dynamic information about the user equipmentthat sends the communication data further comprises: parsing the dataservice activation request or the data service change request to obtainthe dynamic information about the user equipment, or obtaining, throughquerying, the dynamic information about the user equipment according toa result of the parsing; and the service data corresponding to thecommunication data further comprises a service request sent by the userequipment after the communication data is sent.
 19. The method accordingto claim 17, wherein: the receiving communication data sent by the userequipment further comprises receiving the service request sent by theuser equipment; the obtaining service layer information of thecommunication data further comprises: performing, according to theservice request of the user equipment, in-depth data analysis to obtainthe service layer information of the service request; and the servicedata corresponding to the communication data further comprises theservice request.
 20. The method according to claim 19, wherein: beforethe receiving communication data sent by the user equipment, the methodfurther comprises: receiving and forwarding, by the system forcontrolling service transmission, a Transfer Control Protocol (TCP)three-way handshake packet between the user equipment and the originaldestination server, so as to establish a TCP link between the userequipment and the original destination server; the receivingcommunication data sent by the user equipment further comprises:receiving the service data sent by the user equipment through the TCPlink between the user equipment and the original destination server,wherein the service data carries information about the originaldestination server; after the determining the forwarding policy, themethod further comprises: shutting down, by the system for controllingservice transmission, the TCP link between the system for controllingservice transmission and the original destination server; constructing anew TCP three-way handshake packet according to the TCP three-wayhandshake packet, wherein the new TCP three-way handshake packetcomprises sender information and original destination server informationin the TCP three-way handshake packet, and information about the atleast one service server to which the new TCP three-way handshake packetneeds to be forwarded; and sending the new TCP three-way handshakepacket to the original destination server through the at least oneservice server, so as to recover the TCP link between the system forcontrolling service transmission and the original destination server.21. The method according to claim 19, wherein: the forwarding policycomprises: receiving information about multiple service servers of theservice data corresponding to the communication data, and a sequence ofthe multiple service servers; the sending the service data correspondingto the communication data to the at least one service server, receivingthe service data processed by the at least one service server, andsending the received service data that has been processed to theoriginal destination server carried in the communication data comprises:sending the service data corresponding to the communication data to aservice server ranked top among the service servers, and receiving theservice data processed by the service server ranked top among theservice servers; sending the received service data that has beenprocessed to a next service server ranked behind among the serviceservers, and receiving the service data processed by the next serviceserver, until the service data processed by the multiple service serversis received; and sending the service data processed by the multipleservice servers to the original destination server carried in theservice data.
 22. The method according to claim 21, wherein: thesequence of the multiple service servers in the forwarding policycomprises at least one of the following: (a) identifiers of multipleVirtual Local Area Networks (VLANs) that an uplink flow needs to pass insequence, (b) identifiers of multiple tunnels that an uplink flow needsto pass in sequence, and (c) identifiers of multiple physical ports thatan uplink flow needs to pass in sequence; so as to control a sequencefor sending service data in a control executing section according to themultiple VLAN identifiers, multiple tunnel identifiers, or multiplephysical port identifiers; wherein a sequence for sending an uplink flowis the same as that specified in the forwarding policy, and a sequencefor sending a downlink flow is opposite to that specified in theforwarding policy.
 23. The method according to claim 22, furthercomprising: the forwarding policy comprises: receiving information aboutmultiple service servers of the service data sent by the user equipment;and the control executing section comprises: sending the service datacorresponding to the communication data to the multiple service serversin parallel, and receiving multiple pieces of the service data processedby the multiple service servers; and performing comprehensive processingon the received multiple pieces of service data processed by themultiple service servers, generating new service data, and sending thenew service data to the original destination server carried in theservice data.
 24. The method according to claim 17, wherein the systemfor controlling service transmission is a Policy and Charging Control(PCC) system, and a dynamic rule interface or a static rule interface isused between a Policy and Charging Enforcement Function (PCEF) and aPolicy and Charging Rule Function (PCRF) in the PCC system.